import http from '../utils/request.js';
import config from '../utils/config.js';

// 用户API服务
const userApi = {
    /**
     * 用户登录
     * @param {Object} data - 登录信息
     * @returns {Promise}
     */
    login(data) {
        return http.post(config.API.user.login, data);
    },
    
    /**
     * 用户注册
     * @param {Object} data - 注册信息
     * @returns {Promise}
     */
    register(data) {
        return http.post(config.API.user.register, data);
    },
    
    /**
     * 获取用户信息
     * @returns {Promise}
     */
    getUserInfo() {
        return http.get(config.API.user.info);
    },
    
    /**
     * 更新用户信息
     * @param {Object} data - 用户信息
     * @returns {Promise}
     */
    updateUserInfo(data) {
        return http.put(config.API.user.update, data);
    },
    
    /**
     * 上传用户头像
     * @param {String} filePath - 文件路径
     * @returns {Promise}
     */
    uploadAvatar(filePath) {
        return http.upload(config.API.user.uploadAvatar, filePath);
    },
    
    /**
     * 微信小程序登录
     * @param {Object} data - 微信登录信息
     * @returns {Promise}
     */
    wxLogin(data) {
        return http.post(config.API.user.wxLogin, data);
    },
    
    /**
     * 更新用户角色
     * @param {String|Number} userId - 用户ID
     * @param {String} role - 角色类型 (admin/staff/user)
     * @returns {Promise}
     */
    updateUserRole(userId, role) {
        return http.put(`${config.API.user.updateRole}/${userId}`, { role });
    },
    
    /**
     * 搜索用户
     * @param {Object} params - 搜索参数
     * @returns {Promise}
     */
    searchUsers(params) {
        return http.get(config.API.user.search, {
                username: params.username || ''
        });
    }
};

export default userApi; 